package com.fr.cell.editor;

import com.fr.cell.Grid;
import com.fr.cell.event.FloatEditorListener;
import com.fr.report.FloatElement;
import java.awt.Component;
import java.awt.event.KeyEvent;

public abstract interface FloatEditor
{
  public abstract Object getFloatEditorValue()
    throws Exception;

  public abstract Component getFloatEditorComponent(Grid paramGrid, FloatElement paramFloatElement);

  public abstract boolean acceptKeyEventToStartFloatEditing(KeyEvent paramKeyEvent);

  public abstract boolean stopFloatEditing();

  public abstract void cancelFloatEditing();

  public abstract void addFloatEditorListener(FloatEditorListener paramFloatEditorListener);

  public abstract void removeFloatEditorListener(FloatEditorListener paramFloatEditorListener);
}